Method for controlling the rotational speed of a motor

ABSTRACT

A method a speed controller includes reading in an actual angular acceleration value of a motor, comparing the actual angular acceleration value to a setpoint angular acceleration value, determining a controller output torque of an integrating I-component of the speed controller based on the comparison, and controlling the rotational speed of the motor based on the determined controller output torque.

FIELD OF THE INVENTION

The present invention relates to a method for controlling the rotational speed of a motor.

BACKGROUND

To control the rotational speed of motors, for example, electric motors or internal combustion engines, PI controllers may be used, which include various parameter sets having parameters (proportional coefficient and integral coefficient) for the PI controller for various operating states. Furthermore, it is possible to enhance PI controllers with a differential component to form a PID controller.

The largest disturbing variable in a rotational speed control loop is the load coupled to the motor, which, during operation, may vary over a large range of values within a short time, for example, due to the connection of loads of a motor vehicle such as an air conditioner or power steering, or due to changing driving resistances when coasting.

In order to avoid steady-state control deviations, the speed controller includes an integrating I-component which compensates for the deviations in the load. The integrating I-component is determined as a function of the control deviation. However, because of the integration, this results in a larger phase delay which makes a phase-gaining differentiating D-component of the speed controller necessary.

Therefore, there is a need for a better way to achieve a control quality than that of previous PI(D) controllers.

SUMMARY

According to the present invention, a method for controlling the rotational speed of a motor and an arithmetic unit for carrying it out are provided.

One significant aspect of the present invention is that in an example method for controlling the rotational speed or angular velocity of a rotor of a motor, the integrating I-component of the controller output torque of a speed controller is determined based on the comparison between an actual angular acceleration value and a setpoint angular acceleration value. The motor can be an internal combustion engine or an electric motor (for example, a hybrid drive) of a motor vehicle. The speed controller can, for example, be designed as a traction control system.

A motor generally an I-component with an integrating behavior. Since acceleration values are used instead of velocity values, the resulting phase shift is reduced. Thus, it is possible to omit an additional differentiating D-component. Furthermore, the setpoint angular velocity (i.e., setpoint rotational speed) is a function only of the known gain of the proportional P-component of the speed controller and of the moment of inertia of the motor (i.e., rotor), which only changes slowly and is easy to adapt. Therefore, the behavior is particularly immune to disturbance with respect to parameter deviations. In addition, the speed controller according to the present invention compensates for the load as a disturbing variable more rapidly than a conventional PI(D) controller, since the load is compensated for based on acceleration values. Finally, the speed controller is simple to apply, since, as mentioned above, the setpoint angular velocity is preferably determined only by the gain of the proportional P-component of the speed controller and by the moment of inertia of the motor, while the compensation for the load is determined with the aid of the integration factor of the integrating I-component.

According to an example embodiment, the setpoint angular acceleration value is determined from a deviation between an actual angular velocity and a setpoint angular velocity (also referred to below as control deviation), using a characteristic curve. As a result, it is also possible to use the speed controller for motors with a nonlinear behavior.

According to an example embodiment, the setpoint angular acceleration value is determined by multiplying the control deviation by a constant. As a result, it is possible to use a speed controller with a simple design for controlling the rotational speed of motors with a linear behavior.

According to an example embodiment, a controller output torque of a proportional P-component of the speed controller is determined which, added to the controller output torque of the integrating I-component, then forms the total controller output torque of the speed controller. The controller output torque of the proportional P-component is advantageously determined from the control deviation, i.e., a difference in angular velocity. As a result, an additional improvement of the control system is achieved, since angular velocities are taken into account in addition to angular accelerations.

According to an example embodiment, the constant is a quotient formed from a controller coefficient and a moment of inertia of the motor. The controller coefficient is a gain of the proportional P-component of the speed controller. As a result, it is possible to determine the setpoint angular acceleration value in a particularly simple manner, without an additional differential element and without additional acceleration sensors.

According to an example embodiment, the control deviation is sampled using a sampling increment in order to form a differential value from two determined control deviation values and the sampling increment. For this purpose, a quotient is formed from the difference between the two control deviation values and the sampling increment. Thus, the differential value provides a discrete-time variable corresponding to the analogous actual angular acceleration value, so that the method can also be carried out using a sampling controller.

According to an example embodiment, a low-pass filtering of the differential value is carried out. As a result, it is possible to compensate for, and reduce, a susceptibility to disturbance of a differential element which forms the differential value.

According to an example embodiment of the present invention, an arithmetic unit, for example, a speed controller for a motor, is configured, in particular via programming, to carry out a method according to the present invention.

The implementation of the method using software is also advantageous, since this entails particularly low costs, in particular if an executing arithmetic unit is also used for additional tasks and is therefore present in any case. Suitable data carriers for providing the computer program in particular include diskettes, hard disks, flash memories, EEPROMs, CD-ROMs, DVDs, and others. A download of a program via computer networks (Internet, intranet, etc.) is also possible.

Additional advantages and embodiments of the present invention result from the description and the attached drawing. The present invention is schematically depicted in the drawing based on an example embodiment and is described in greater detail below with reference to the drawing. The aforementioned features and the features explained below are applicable not only in each specified combination, but also in other combinations or alone, without departing from the scope of the present invention.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 shows a schematic representation of a control loop according to an example embodiment of the present invention.

FIG. 2 shows details of a speed controller of FIG. 1, according to an example embodiment of the present invention.

DETAILED DESCRIPTION

FIG. 1 shows, according to an example embodiment of the present invention, a control loop that includes a motor 2 and a speed controller 4. The motor 2 is an internal combustion engine or an electric motor of a hybrid drive for driving a motor vehicle. Speed controller 4 can be designed for controlling the idle and final rotational speed of motor 2, or can be a component of a traction control system. Speed controller 4 can be part of an arithmetic unit, for example, of an engine controller of a motor vehicle.

Motor 2 includes a rotor (not shown), for example, a rotor of the electric motor or a crankshaft of the internal combustion engine. The rotor has a moment of inertia J and rotates during operation with an actual angular velocity value ω_(actual), a load torque M_(L) being present at motor 2. Speed controller 4 is configured to regulate actual angular velocity ω_(actual) to a setpoint angular velocity ω_(setpoint).

As long as a controller output torque M_(R) of speed controller 4 corresponds exactly to the applied load torque M_(L), no angular acceleration results, and the rotor of motor 2 rotates having a constant actual angular velocity value ω_(actual)=ω_(setpoint).

Changes in the angular velocity are therefore caused by a difference between controller output torque M_(R) and load torque M_(L). According to the principle of angular momentum, the following applies to the time derivative of the control deviation (Δω=(ω_(actual)−ω_(setpoint))) between the actual angular velocity and the setpoint angular velocity, which corresponds to an angular acceleration:

J{dot over (Δ)}ω=(M _(R) −M _(L))  (1)

Therefore, motor 2 has an integrating behavior, i.e., it behaves like an integrator or like an I-element in the control loop.

Controller output torque M_(R) of speed controller 4 is composed of an integrating I-component M_(I) and another typically proportional P-component M_(P):

M _(R) =M _(I) +M _(P)  (2)

Speed controller 4 includes an I-speed controller 4 a for determining integrating I-component M_(I), and speed controller 4 includes a P-speed controller 4 b for determining proportional P-component M_(P).

Ideally, in such a regulating system, I-component M_(I) compensates exactly for (continuous or static) load torque M_(L). Accordingly, equation (1) yields the following:

$\begin{matrix} {{\overset{.}{\Delta}\omega} = \frac{M_{R} - M_{I}}{J}} & (3) \end{matrix}$

Therefore, this {dot over (Δ)}ω ideally represents a setpoint angular acceleration value a α_(setpoint).

If load torque M_(L) is constant, other disturbances may be compensated for via P-component M_(P).

If P-speed controller 4 b is designed as a linear controller, setpoint angular acceleration value α_(setpoint) is determined by a determination unit 6 as an input value of P-speed controller 4 b by multiplying angular velocity control deviation Δω by a constant which is a quotient formed from a controller coefficient K_(P) of proportional component M_(P) of speed controller 4 and moment of inertia J of motor 2:

$\alpha_{setpoint} = {{- \frac{K_{P}}{J}}{\Delta\omega}}$

In the present exemplary embodiment, as a generalization, P-speed controller 4 b is designed as a nonlinear controller. As an input value of P-speed controller 4 b, each setpoint angular acceleration value α_(setpoint) is read out or determined from a stored characteristic curve f_(setpoint)(Δω) by determination unit 6 for determining setpoint angular acceleration value α_(setpoint) as a function of angular velocity control deviation Δω:

α_(setpoint) =−f _(setpoint)(Δω)

If the load remains unchanged during operation, i.e., the control loop is not disturbed by a load, load torque M_(L) is equal to I-component M_(I). However, load torque M_(L) is the largest disturbing variable in the control loop. Load torque M_(L) may vary over a large value range in a short time, for example, due to the connection of loads such as an air conditioner or power steering of a motor vehicle, or due to changing driving resistances when coasting. In these situations, M_(I) must preferably be rapidly adapted to the changed load. Controller output torque M_(I) of the integrating I-component of speed controller 4 is determined based on the difference between setpoint angular acceleration value α_(setpoint) and actual angular acceleration value α_(actual):

M _(I) =K _(I)∫(α_(setpoint)−α_(actual))dt

The integrating I-component M_(I) thus operates with integral gain K_(I). Within the scope of the present invention, the I-component is thus determined as a function of the deviation between the setpoint angular acceleration and the actual angular acceleration, which results in it achieving a steady-state final value (corresponding to the load torque) earlier than in the case of a determination from the control deviation between the actual angular velocity and the setpoint angular velocity.

If I-speed controller 4 a is designed as a nonlinear controller, a nonlinear gain g of the difference between setpoint angular acceleration value α_(setpoint) and actual angular acceleration value α_(actual) may be used:

M _(I) =∫g(α_(setpoint)−α_(actual))dt

If I-speed controller 4 a is designed as a linear controller, controller output torque M_(I) of integrating I-component M_(I) of I-speed controller 4 a is determined as:

$M_{I} = {{- K_{I}}{\int{\left( {{\frac{K_{P}}{J}\omega} + \alpha_{actual}} \right){t}}}}$

Integral gain K_(I) of integrating I-component M_(I) of I-speed controller 4 a may be determined by solving this differential equation, as known per se.

FIG. 2 shows speed controller 4, which is designed in the present exemplary embodiment as a discrete-time sampling controller.

Speed controller 4 includes a derivative element 8, a low-pass filter 10, an integral element 12, and a proportional element 14. Speed controller 4, including its derivative element 8, integral element 12, proportional element 14, and low-pass filter 10, can include hardware and/or software components.

Speed controller 4 is designed to read in discrete-time angular velocity control deviation values Δω(t), Δω(t−1), which have been sampled using a sampling increment Δt using a sampling device (not shown).

Derivative element 8 is designed to determine a differential value Δω_(D)(t) from two consecutively detected angular velocity control deviation values Δω(t), Δω(t−1) by forming the difference between the detected angular velocity control deviation values Δω(t), Δω(t−1) and dividing by sampling increment Δt:

${{\Delta\omega}_{D}(t)} = \frac{{{\Delta\omega}(t)} - {{\Delta\omega}\left( {t - 1} \right)}}{\Delta \; t}$

Differential value Δω_(D)(t) is read in and filtered by low-pass filter 10 in order to increase the interference immunity of derivative element 8.

Filtered differential value Δω_(D)(t) is read in by integral element 12. Based on a stored controller output torque value M_(I)(t−1) of integral element 12 at point in time t−1, controller coefficient K_(I) of the integrating component of the speed controller, and the quotient formed from controller coefficient K_(P) of the proportional component of speed controller 4 and moment of inertia J, integral element 12 determines instantaneous controller output torque value M_(I)(t) of integral element 10 at point in time t as:

${M_{I}(t)} = {{M_{I}\left( {t - 1} \right)} - {K_{I}\left( {{{\Delta\omega}_{D}(t)} + {\frac{K_{P}}{J}{{\Delta\omega}(t)}}} \right)}}$

Proportional element 14 is designed to read in discrete-time angular velocity control deviation value Δω(t) at point in time t. In order to determine controller output torque value M_(P)(t) of proportional element 14 at point in time t, a multiplication of the proportional component of speed controller 4 by the controller coefficient K_(P) is carried out:

M _(P)(t)=−K _(P)·Δω(t)

Instantaneous controller output torque value M_(I)(t) of integral element 12 and controller output torque value M_(P)(t) of proportional element 14 together then yield total controller output torque M_(R)(t) of speed controller 4 at point in time t.

During operation, changes in load torque M_(L) cause deviations of the actual angular acceleration from setpoint angular acceleration α_(setpoint). As soon as deviations in angular acceleration α occur, integrating I-component M_(I) is corrected in such a way that the correction counteracts the deviation of angular acceleration α. Thus, an increasing load torque M_(L) causes angular acceleration α to decrease. If actual angular acceleration value α_(actual) is less than setpoint angular acceleration value α_(setpoint), controller output torque M_(P) of proportional P-component M_(P) of speed controller 4 or controller output torque value M_(I)(t) of integral element 10 increases proportionally to the deviation of the angular acceleration, which counteracts the change in load torque M_(L). 

What is claimed is:
 1. A method of a motor speed controller, comprising: reading in, by the speed controller, an actual angular acceleration value of a motor; comparing, by the speed controller, the actual angular acceleration value and a setpoint angular acceleration value; determining, by the speed controller, a controller output torque of an integrating I-component of the speed controller based on the comparison of the actual angular acceleration value and the setpoint angular acceleration value; and controlling, by the speed controller, a rotational speed of the motor based on the controller output torque.
 2. The method of claim 1, further comprising determining the setpoint angular acceleration value from a deviation between an actual angular velocity and a setpoint angular velocity, using a characteristic curve.
 3. The method of claim 1, further comprising determining the setpoint angular acceleration value by multiplying a deviation between an actual angular velocity and a setpoint angular velocity by a constant.
 4. The method of claim 1, further comprising determining a controller output torque of a proportional P-component of the speed controller, and determining a total controller output torque of the speed controller from the controller output torque of the proportional P-component and the controller output torque of the integrating I-component.
 5. The method of claim 4, further comprising determining the setpoint angular acceleration value by multiplying a deviation between an actual angular velocity and a setpoint angular velocity by a constant, wherein the constant is a quotient formed from a controller coefficient of the proportional P-component of the speed controller and a moment of inertia of the motor.
 6. The method of claim 1, further comprising sampling a deviation between an actual angular velocity and a setpoint angular velocity using a sampling increment in order to detect angular velocity control deviation values, and forming a differential value using the two detected angular velocity control deviation values and the sampling increment.
 7. The method of claim 6, further comprising low-pass filtering the differential value.
 8. The method of claim 7, wherein the controller output torque of the integrating I-component of the speed controller is determined based on the differential value.
 9. The method of claim 6, wherein the controller output torque of the integrating I-component of the speed controller is determined based on the differential value.
 10. The method of claim 9, further comprising determining the setpoint angular acceleration value by multiplying a deviation between an actual angular velocity and a setpoint angular velocity by a constant, wherein: the constant is a quotient formed from a controller coefficient of the proportional P-component of the speed controller and a moment of inertia of the motor; and the controller output torque of the integrating I-component is determined based on a controller coefficient of the integrating I-component of the speed controller and the constant.
 11. The method of claim 1, wherein, based on a value of the controller output torque of the integrating I-component at a first point in time, a value of the controller output torque of the integrating I-component at a second point in time is determined, the second point in time being later than the first point in time.
 12. An arithmetic unit comprising processing circuitry, wherein the processing circuitry is configured to read in an actual angular acceleration value of a motor; compare the actual angular acceleration value and a setpoint angular acceleration value; determine a controller output torque of an integrating I-component of the speed controller based on the comparison of the actual angular acceleration value and the setpoint angular acceleration value; and control a rotational speed of the motor based on the controller output torque
 13. A non-transitory computer-readable medium on which are stored instructions that are executable by a processor and that, when executed by the processor, cause the processor to perform a method, the method comprising: reading in an actual angular acceleration value of a motor; comparing the actual angular acceleration value and a setpoint angular acceleration value; determining a controller output torque of an integrating I-component of the speed controller based on the comparison of the actual angular acceleration value and the setpoint angular acceleration value; and controlling a rotational speed of the motor based on the controller output torque 